Skip to content

docs(roadmap): record permanently-excluded, never-planned items - #520

Merged
jackgranatowski merged 1 commit into
mainfrom
claude/roadmap-out-of-scope-distq0
Jul 5, 2026
Merged

docs(roadmap): record permanently-excluded, never-planned items#520
jackgranatowski merged 1 commit into
mainfrom
claude/roadmap-out-of-scope-distq0

Conversation

@jackgranatowski

@jackgranatowski jackgranatowski commented Jul 5, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds a permanently excluded block under ## Out of scope in docs/roadmap.md, capturing deliberate architectural decisions so they are not re-proposed or picked up by accident. These are explicit non-goals, not backlog.

What's excluded (and why)

  1. Runtime JavaScript in the framework core — core stays zero-JS; observer-driven "reveal on scroll / on-visible" belongs to host/integration layers, not core/. CSS-only .is-visible + scroll-timeline view() remain the supported surfaces.
  2. A consumer-facing preprocessor layer (mixins / functions) — no build step for consumers; native CSS (calc(), pow(), color-mix(), relative color, future CSS @function) is the substitute.
  3. Prefix-based automatic component styling — no "style everything matching *--primary/.btn-*"; components are explicit BEM .sf-* classes.
  4. Viewport-breakpoint utilities / breakpoint mixins — responsiveness via container queries and breakpoint-free techniques.
  5. Snippet-expansion ("recipe") syntax?name-style expansion needs a preprocessor/builder pass; not for the pure-CSS framework.
  6. Selector-list-driven rule generation — the framework won't graft component rules onto a user-supplied selector list; opt in via the component class.
  7. Per-channel colour partials (-h/-s/-l, -r/-g/-b) — colour is OKLCH + relative syntax + color-mix(); channel partials are unnecessary.
  8. Placeholder-content and script-wrapper helpers — dummy text / <script> boilerplate is not a styling concern.

Scope

  • Docs only — appends to docs/roadmap.md; no source, tokens, or version line touched.
  • npm run check:version passes (all references at 0.6.35).

🤖 Generated with Claude Code

https://claude.ai/code/session_01AR8LFdZpCqJj3AaYWM4hB4


Generated by Claude Code

Summary by CodeRabbit

  • Documentation
    • Updated the roadmap to clarify several items that are permanently out of scope.
    • Added explicit exclusions for a range of advanced styling, preprocessing, and helper-generation patterns.
    • Clarified supported alternatives where applicable, helping set clearer expectations for future work.

Add 8 deliberate architectural exclusions under Out of scope so they are not
re-proposed or picked up by accident: runtime JS in core, consumer-facing
preprocessor/mixins, prefix-based auto component styling, viewport-breakpoint
utilities/mixins, snippet-expansion (recipe) syntax, selector-list-driven rule
generation, per-channel colour partials, and placeholder/script-wrapper helpers.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AR8LFdZpCqJj3AaYWM4hB4
@coderabbitai

coderabbitai Bot commented Jul 5, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 25c415de-5406-44c5-9fbe-3783a9257449

📥 Commits

Reviewing files that changed from the base of the PR and between 8d54f3d and 8949d1e.

📒 Files selected for processing (1)
  • docs/roadmap.md

📝 Walkthrough

Walkthrough

This PR adds a new "permanently excluded" section to docs/roadmap.md under Out of scope, listing architectural items that will not be implemented, such as runtime JavaScript, mixin APIs, prefix-based styling, and related utilities.

Changes

Roadmap Documentation Update

Layer / File(s) Summary
Permanently excluded backlog items
docs/roadmap.md
Adds a list under Out of scope enumerating excluded categories: core runtime JS, consumer mixin/function APIs, prefix-based automatic styling, viewport breakpoint utilities, snippet expansion syntax, selector-list rule generation, per-channel color partials, and placeholder/script boilerplate helpers.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately reflects the docs-only roadmap update documenting permanently excluded, never-planned items.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/roadmap-out-of-scope-distq0

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@qodo-code-review

Copy link
Copy Markdown

PR Summary by Qodo

docs(roadmap): document permanently excluded non-goals

📝 Documentation 🕐 Less than 10 minutes

Grey Divider

AI Description

• Add a “permanently excluded” non-goals section under ## Out of scope.
• Capture explicit architectural exclusions to prevent future re-proposals.
• Clarify supported substitutes (CSS-only hooks, native CSS features, container queries).
Diagram

graph TD
  A[/"docs/roadmap.md"/] --> B["Out of scope"] --> C["Permanently excluded"]
  C --> D["Core: zero JS"] & E["No preprocessors"] & F["Explicit BEM"] & G["No breakpoints"]
Loading
High-Level Assessment

The following are alternative approaches to this PR:

1. Separate “Non-goals” document (e.g., docs/non-goals.md)
  • ➕ Keeps the roadmap shorter and easier to scan for planned work
  • ➕ Allows deeper rationale, links, and policy-style wording without cluttering the roadmap
  • ➖ Reduces discoverability; readers may not find it when reviewing roadmap scope
  • ➖ Adds one more doc to maintain and keep consistent with the roadmap
2. Promote exclusions into a short “Design principles” section
  • ➕ Frames exclusions as positive principles (e.g., zero-JS core, CSS-first) that guide decisions
  • ➕ May read less like a denylist and more like a coherent philosophy
  • ➖ Can lose the explicit “never planned” clarity for specific repeatedly-requested features
  • ➖ May invite interpretation debates instead of closing specific topics

Recommendation: The PR’s approach (keep a concise, explicit “permanently excluded” list directly under ## Out of scope) is the best default because it maximizes visibility at the point where scope questions arise. If the list grows substantially, consider extracting a dedicated non-goals doc and linking it from the roadmap section header.

Files changed (1) +38 / -0

Documentation (1) +38 / -0
roadmap.mdAdd “permanently excluded” architectural non-goals to Out of scope +38/-0

Add “permanently excluded” architectural non-goals to Out of scope

• Appends a new “permanently excluded” block under '## Out of scope' to record explicit never-planned items. Enumerates key exclusions (e.g., no runtime JS in core, no consumer-facing preprocessors, no prefix-based auto-styling, no viewport breakpoint utilities) with brief rationale and intended substitutes.

docs/roadmap.md

@qodo-code-review

Copy link
Copy Markdown

Code Review by Qodo

🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)

Grey Divider

Great, no issues found!

Qodo reviewed your code and found no material issues that require review

Grey Divider

Qodo Logo

@jackgranatowski
jackgranatowski merged commit 42e9dac into main Jul 5, 2026
13 checks passed
jackgranatowski pushed a commit that referenced this pull request Jul 5, 2026
Verified live-vs-staged by building the bundle + checking comment state:
- SHIPPED (live in core): .sf-corner-scoop (inverted radius, via mask), .sf-overlap
  (overlap effect), .sf-grid-flex (centered flex-grid) -> close audit 2.3, 14, 8.12
  and priorities B27, B11, flex-grid gap.
- STAGED (authored but commented in optional/utilities.css): .sf-hover-*, .sf-h1..h6,
  .sf-z-*, .sf-object-* -> B3 and B7-headings move from 'missing' to 'authored,
  awaiting un-stage'. .sf-btn/.sf-card/.sf-skeleton still staged. .sf-boxed dropped.
- Dark-mode contrast fixes (PR #513) noted against A1.
- Corrected the stale 'utilities.css is an empty stub' premise.
Plugin: recent PRs infra/tests/marketing/relicense only — no new ACSS parity.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AR8LFdZpCqJj3AaYWM4hB4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants